With the advent of digital photography, the desire has grown to be able to manipulate the images produced. A user may wish simply to enhance an image, or to distort it for a visual effect, or to touch-up the image. A variety of computer programs exist (such as Adobe® Photoshop®) designed to aid a user to alter an image. Such alterations can include a variety of distortions, such as a swirling effect, or magnification of certain areas of an image, or stretching portions of an image. Other distortions are common.
A distortion may be thought of as a grid of vectors (the “distortion grid,”) with each vector corresponding to a single point in an image. The vectors indicate how the image is modified to obtain the original, undistorted source image. The source image itself may consist of a grid of vectors each with zero length (as well as other information, such as color). The image with the distortion applied is the “destination image.”
As distortions are sequentially applied, they are summed in the distortion grid. What exists in the distortion grid is only the sum of all previous distortions, without the history of the individual distortions themselves.
Once the distortion grid is satisfactory to a user (who typically sees the distorted image on a graphical display device while working on it) the user may elect to accept the changes. Once that is done, typically, the distorted image in effect replaces the original, and the information regarding the distortions (i.e. the sum of the distortions) is lost. If the user elects not to accept the distortion, the original image is preserved and the distortion grid discarded.